package br.ufpe.cin.tose.copapolling;

import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import java.util.ArrayList;
import java.util.HashMap;

public class LazyAdapter extends BaseAdapter {

    private Activity activity;
    private ArrayList<HashMap<String, String>> data;
    private static LayoutInflater inflater = null;
    public ImageLoader imageLoader;

    TextView tvNomeTime1, tvNomeTime2, tvLocalJogo;
    ImageView ivFotoTime1, ivFotoTime2;
    ImageView ivPlacarTime1, ivPlacarTime2;

    public LazyAdapter(Activity a, ArrayList<HashMap<String, String>> d) {
        activity = a;
        data = d;
        inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        imageLoader = new ImageLoader(activity.getApplicationContext());
    }

    public int getCount() {
        return data.size();
    }

    public Object getItem(int position) {
        return position;
    }

    public long getItemId(int position) {
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        View vi = convertView;
        if (convertView == null)
            vi = inflater.inflate(R.layout.list_row, null);

        tvNomeTime1 = (TextView) vi.findViewById(R.id.nomeTime1);
        tvNomeTime2 = (TextView) vi.findViewById(R.id.nomeTime2);
        tvLocalJogo = (TextView) vi.findViewById(R.id.localJogo);
        ivFotoTime1 = (ImageView) vi.findViewById(R.id.fotoTime1);
        ivFotoTime2 = (ImageView) vi.findViewById(R.id.fotoTime2);
        ivPlacarTime1 = (ImageView) vi.findViewById(R.id.placarTime1);
        ivPlacarTime2 = (ImageView) vi.findViewById(R.id.placarTime2);


        int idImagePlacarTime1 = R.drawable.placar0;
        int idImagePlacarTime2 = R.drawable.placar0;

        String nomeTime1 = data.get(position).get("NomeTime1");
        String nomeTime2 = data.get(position).get("NomeTime2");
        String localJogo = data.get(position).get("LocalJogo");

        int golsTime1 = new Integer(data.get(position).get("GolsTime1")).intValue();
        int golsTime2 = new Integer(data.get(position).get("GolsTime2")).intValue();

        tvNomeTime1.setText(nomeTime1);
        tvNomeTime2.setText(nomeTime2);
        tvLocalJogo.setText(localJogo);


        if (golsTime1 == 1) idImagePlacarTime1 = R.drawable.placar1;
        else if (golsTime1 == 2) idImagePlacarTime1 = R.drawable.placar2;
        else if (golsTime1 == 3) idImagePlacarTime1 = R.drawable.placar3;
        else if (golsTime1 == 4) idImagePlacarTime1 = R.drawable.placar4;
        else if (golsTime1 == 5) idImagePlacarTime1 = R.drawable.placar5;
        else if (golsTime1 == 6) idImagePlacarTime1 = R.drawable.placar6;
        else if (golsTime1 == 7) idImagePlacarTime1 = R.drawable.placar7;
        else if (golsTime1 == 8) idImagePlacarTime1 = R.drawable.placar8;
        else if (golsTime1 == 9) idImagePlacarTime1 = R.drawable.placar9;

        if (golsTime2 == 1) idImagePlacarTime2 = R.drawable.placar1;
        else if (golsTime2 == 2) idImagePlacarTime2 = R.drawable.placar2;
        else if (golsTime2 == 3) idImagePlacarTime2 = R.drawable.placar3;
        else if (golsTime2 == 4) idImagePlacarTime2 = R.drawable.placar4;
        else if (golsTime2 == 5) idImagePlacarTime2 = R.drawable.placar5;
        else if (golsTime2 == 6) idImagePlacarTime2 = R.drawable.placar6;
        else if (golsTime2 == 7) idImagePlacarTime2 = R.drawable.placar7;
        else if (golsTime2 == 8) idImagePlacarTime2 = R.drawable.placar8;
        else if (golsTime2 == 9) idImagePlacarTime2 = R.drawable.placar9;


        ivPlacarTime1.setImageResource(idImagePlacarTime1);
        ivPlacarTime2.setImageResource(idImagePlacarTime2);

        /*
        // Setting all values in listview
        title.setText(song.get(CustomizedListView.KEY_TITLE));
        artist.setText(song.get(CustomizedListView.KEY_ARTIST));
        duration.setText(song.get(CustomizedListView.KEY_DURATION));
        imageLoader.DisplayImage(song.get(CustomizedListView.KEY_THUMB_URL), thumb_image);
        */
        return vi;
    }
}